<!doctype html>
<html>
 <head>
 <meta charset="utf-8">
 <title>Mouse Move Drag</title>
 <link rel="stylesheet" href="style.css">
 </head>
 <body>
 <canvas id="canvas" width="400" height="400"></canvas>
 <script src="utils.js"></script>
 <script src="ball.js"></script>
 <script>
 window.onload = function () {
 var canvas = document.getElementById('canvas'),
 context = canvas.getContext('2d'),
 mouse = utils.captureMouse(canvas),
 ball = new Ball();

 ball.x = canvas.width / 2;
 ball.y = canvas.height / 2;

 canvas.addEventListener('mousedown', function () {
	 if (utils.containsPoint(ball.getBounds(), mouse.x, mouse.y)) {
		 canvas.addEventListener('mouseup', onMouseUp, false);
		 canvas.addEventListener('mousemove', onMouseMove, false);
	 }
 }, false);

 function onMouseUp () {
	 canvas.removeEventListener('mouseup', onMouseUp, false);
	 canvas.removeEventListener('mousemove', onMouseMove, false);
 }

 function onMouseMove (event) {
 ball.x = mouse.x;
 ball.y = mouse.y;
 }

 (function drawFrame () {
 window.requestAnimationFrame(drawFrame, canvas);
 context.clearRect(0, 0, canvas.width, canvas.height);

 ball.draw(context);
 }());
 };
 </script>
 </body>
</html> 